package com.devplatform.service.article;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.devplatform.pojo.CommentLike;
import com.devplatform.pojo.article.Comments;
import com.devplatform.pojo.dto.CommentPublishDto;
import com.devplatform.pojo.dto.CommentsDto;
import com.devplatform.pojo.vo.DataVo;

/**
 * @author Jnks03
 * @description 针对表【comments】的数据库操作Service
 * @createDate 2025-09-29 16:27:19
 */
public interface CommentsService extends IService<Comments> {
    // 发布评论
    DataVo publish(CommentPublishDto dto);

    // 查询文章的评论列表（分页，按时间倒序）
    DataVo getCommentList(IPage<CommentsDto> commentsDtoIPage, Long articleId);

    // 删除自己的评论（逻辑删除）
    DataVo delete(Integer commentId);

    // 评论点赞（累加点赞数）
    DataVo like(CommentLike commentLike);

    // 举报评论（累加举报数）
    DataVo report(Integer commentId);

    //评论状态
    DataVo<Boolean> checkLikeStatus(Long userId, Long commentId);
}
